1. Field of the Invention
The present invention relates to a technique of dynamically controlling a layout for generating, editing, and printing a document including a text and an image and, more particularly, to a technique suitable for generating, editing, and printing a variable data document.
2. Description of the Related Art
Recently, diversification of commodities has shortened the life cycles of commodities. Also, the wide use of the Internet has strengthened the orientation of customization service for consumers utilizing the Internet. Thus, the necessity for CRM (Customer Relationship Management) and One-to-One Marketing attracts attention. These techniques raise the degree of satisfaction of customers and aim at acquiring and capturing customers.
The One-to-One Marketing is a kind of a database marketing technique to make a database of individual attribute information, such as age, gender, hobby, preference, and purchase history, to analyze the information, and to make proposals that meet the needs of customers. Variable printing technique is a typical marketing technique of this type. Along with the recent progress in DTP (DeskTop Publishing) technology and the recent wide use of digital printers, variable print systems have been developed, which customize documents for each customer and output the customized documents. The variable print systems are required to optimally lay out and display contents that vary in amount of information with customers.
Associated variable print systems have achieved the display of a layout by laying out containers (referred to also as field areas in a document form) on each document as areas on each of which information is displayed, and also associating the containers with the database.
However, the size of each container serving as a partial display area, to which text and images are pasted, is fixed. Thus, in a case where an amount of data contained in the database is larger than the size of a container when this data is inserted into the container, text overlap or image clipping occurs. Conversely, in a case where the amount of the data is smaller than the size of the container, a blank space is formed in the container. In either case, it is impossible to realize an optimum layout display for amounts of information representing text and images.
To solve this problem, automatic layout systems have been proposed, which can change the size of each container according to the amount of information. This automatic layout system can variably set the sizes of containers for text and images. Thus, this automatic layout system can change the size of each container to increase according to an amount of data to be inserted thereinto. Also, when data whose amount is larger than a fixed size of a container, is inserted thereinto, there is a technique of reducing the font size of text to display the entire text in the container.
However, the above-described system has a problem that when the size of the container is increased, this container may overlap another container provided on a document. The system has another problem that in a case where the amount of text is large when the font size is adjusted, the font size may become too small. To solve these problems, another automatic layout technique of reducing, when the size of a container is increased, the size of an adjacent container is employed by a layout design apparatus, which is disclosed in Japanese Patent Application Laid-Open No. 11-316792.
Japanese Patent Application Laid-Open No. 11-316792 describes that the container size of a container is increased according to a text input thereto, and the size of an adjacent container is reduced to maintain the distance therebetween. Thus, this related automatic layout technique has a problem that as the amount of input text increases, the reduction in size of the adjacent container is continued.
Also, the technique described in Japanese Patent Application Laid-Open No. 11-316792 does not take into consideration the variable print system adapted to create a document customized for each customer by associating each container with a database and then flowing content data into each container.
An example of a related layout method of taking into consideration variable-data printing is a method of creating a container having a fixed size and then flowing content data thereinto. However, in the case of using a container having a fixed size, this layout method has a problem that when content data, whose size is larger than that of the container, is flowed thereinto, an overflow occurs, and that when such content data is forcibly flowed thereinto with a font size reduced, the font size becomes extremely small. Also, the size of the container may be increased or decreased according to the size of the content data. However, in a state in which a plurality of containers is associated with one another, when the size of one of the plurality of containers is increased, the sizes of the associated containers have to decrease with increase in the size of the one of the plurality of containers. Thus, layout processing cannot be performed in consideration of the balance among the sizes of the containers.
Consequently, a related layout processing method of performing, in a case where the size of each container is changed according to the size of content data flowed thereinto, layout processing by controlling an amount in change of the size of each container is employed as a related layout method taking into consideration the balance among the sizes of a plurality of containers associated with one another. Thus, layout processing can be performed in consideration of the balance among the sizes of the associated containers. However, although the layout of the associated containers can be adjusted by this layout processing method, the layout of the containers, which are not associated with one another, are not adjusted by this layout processing method. For example, it is assumed that two containers A and B are disposed on a template and are not associated with each other. When large-size content data is flowed into each of the containers A and B in this situation, the sizes of both of the containers A and B are increased without performing layout adjustment on the containers A and B until the content data is fitted into each of the containers A and B. Consequently, this layout processing method causes a problem that the containers finally overlap each other.
Also, the related method causes another problem that even when a user associates the containers with each other to maintain the distance therebetween to prevent the containers from overlapping each other, factors of the dynamic change of the layout increases, so that it is difficult to predict the dynamic change of the layout. Additionally, the adjustment of the layout of containers, into which completely unassociated content data are respectively flowed, may cause a user to misinterpret that the content data are associated with one another. Further, with an increase in the number of factors associating the containers with one another, the layout adjustment should be performed in consideration of many factors. This causes a problem that optimal layout adjustment is not performed, so that a desired layout is not obtained.